<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>My Project: libs/defs.h 文件参考</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">My Project
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- 制作者 Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'搜索','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','搜索');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_6719ab1f1f7655efc2fa43f7eb574fd1.html">libs</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#define-members">宏定义</a> &#124;
<a href="#typedef-members">类型定义</a>  </div>
  <div class="headertitle">
<div class="title">defs.h 文件参考</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div class="dynheader">
此图展示该文件直接或间接的被哪些文件引用了:</div>
<div class="dyncontent">
<div class="center"><img src="defs_8h__dep__incl.gif" border="0" usemap="#alibs_2defs_8hdep" alt=""/></div>
<map name="alibs_2defs_8hdep" id="alibs_2defs_8hdep">
<area shape="rect" title=" " alt="" coords="1993,5,2082,32"/>
<area shape="rect" href="assert_8h.html" title=" " alt="" coords="2497,155,2647,181"/>
<area shape="rect" href="kdebug_8c.html" title=" " alt="" coords="243,379,400,405"/>
<area shape="rect" href="ide_8c.html" title=" " alt="" coords="1741,379,1867,405"/>
<area shape="rect" href="pmm_8h.html" title=" " alt="" coords="3377,229,3508,256"/>
<area shape="rect" href="init_8c.html" title=" " alt="" coords="1943,379,2054,405"/>
<area shape="rect" href="pmm_8c.html" title=" " alt="" coords="3430,379,3559,405"/>
<area shape="rect" href="swap_8h.html" title=" " alt="" coords="2717,304,2848,331"/>
<area shape="rect" href="swap__clock_8c.html" title=" " alt="" coords="1121,453,1292,480"/>
<area shape="rect" href="swap__fifo_8c.html" title=" " alt="" coords="1920,453,2077,480"/>
<area shape="rect" href="trap_8c.html" title=" " alt="" coords="2130,379,2251,405"/>
<area shape="rect" href="kdebug_8h.html" title=" " alt="" coords="1537,304,1695,331"/>
<area shape="rect" href="panic_8c.html" title=" " alt="" coords="424,379,568,405"/>
<area shape="rect" href="stab_8h.html" title=" " alt="" coords="4169,80,4308,107"/>
<area shape="rect" href="clock_8c.html" title=" " alt="" coords="3973,379,4115,405"/>
<area shape="rect" href="clock_8h.html" title=" " alt="" coords="2227,304,2370,331"/>
<area shape="rect" href="console_8c.html" title=" " alt="" coords="3785,229,3943,256"/>
<area shape="rect" href="ide_8h.html" title=" " alt="" coords="1821,304,1949,331"/>
<area shape="rect" href="stdio_8c.html" title=" " alt="" coords="94,379,218,405"/>
<area shape="rect" href="memlayout_8h.html" title=" " alt="" coords="2851,155,3021,181"/>
<area shape="rect" href="vmm_8h.html" title=" " alt="" coords="2717,229,2848,256"/>
<area shape="rect" href="mmu_8h.html" title=" " alt="" coords="3083,80,3213,107"/>
<area shape="rect" href="trap_8h.html" title=" " alt="" coords="1361,229,1484,256"/>
<area shape="rect" href="list_8h.html" title=" " alt="" coords="2397,80,2478,107"/>
<area shape="rect" href="printfmt_8c.html" title=" " alt="" coords="593,379,706,405"/>
<area shape="rect" href="sbi_8h.html" title=" " alt="" coords="3940,155,4020,181"/>
<area shape="rect" href="stdio_8h.html" title=" " alt="" coords="1093,304,1187,331"/>
<area shape="rect" href="string_8h.html" title=" " alt="" coords="1211,304,1309,331"/>
<area shape="rect" href="swapfs_8c.html" title=" " alt="" coords="3165,453,3291,480"/>
<area shape="rect" href="vmm_8c.html" title=" " alt="" coords="2959,379,3089,405"/>
<area shape="rect" href="default__pmm_8c.html" title=" " alt="" coords="3634,379,3817,405"/>
<area shape="rect" href="default__pmm_8h.html" title=" " alt="" coords="3481,304,3663,331"/>
<area shape="rect" href="swap_8c.html" title=" " alt="" coords="2806,453,2935,480"/>
<area shape="rect" href="swapfs_8h.html" title=" " alt="" coords="3164,379,3292,405"/>
<area shape="rect" href="swap__clock_8h.html" title=" " alt="" coords="2377,379,2548,405"/>
<area shape="rect" href="swap__fifo_8h.html" title=" " alt="" coords="2573,379,2731,405"/>
<area shape="rect" href="kmonitor_8c.html" title=" " alt="" coords="730,379,897,405"/>
<area shape="rect" href="fs_8h.html" title=" " alt="" coords="2497,304,2591,331"/>
<area shape="rect" href="sync_8h.html" title=" " alt="" coords="3083,155,3213,181"/>
<area shape="rect" href="kmonitor_8h.html" title=" " alt="" coords="851,304,1019,331"/>
<area shape="rect" href="readline_8c.html" title=" " alt="" coords="973,379,1086,405"/>
<area shape="rect" href="sign_8c.html" title=" " alt="" coords="1345,379,1441,405"/>
<area shape="rect" href="vector_8c.html" title=" " alt="" coords="1111,379,1220,405"/>
<area shape="rect" href="string_8c.html" title=" " alt="" coords="1517,379,1614,405"/>
</map>
</div>
</div>
<p><a href="defs_8h_source.html">浏览源代码.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
宏定义</h2></td></tr>
<tr class="memitem:a070d2ce7b6bb7e5c05602aa8c308d0c4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>&#160;&#160;&#160;((void *)0)</td></tr>
<tr class="separator:a070d2ce7b6bb7e5c05602aa8c308d0c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6034e8cd4bcd5bacfd060abd01bbd8a8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#a6034e8cd4bcd5bacfd060abd01bbd8a8">__always_inline</a>&#160;&#160;&#160;inline <a class="el" href="init_8c.html#a189705fbc4254ff3cc332e052cd13215">__attribute__</a>((always_inline))</td></tr>
<tr class="separator:a6034e8cd4bcd5bacfd060abd01bbd8a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a3055fa9fd2b7c91df69c75e185e76f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#a2a3055fa9fd2b7c91df69c75e185e76f">__noinline</a>&#160;&#160;&#160;<a class="el" href="init_8c.html#a189705fbc4254ff3cc332e052cd13215">__attribute__</a>((noinline))</td></tr>
<tr class="separator:a2a3055fa9fd2b7c91df69c75e185e76f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b6df4fe38493e14648842364a76075f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#a5b6df4fe38493e14648842364a76075f">__noreturn</a>&#160;&#160;&#160;<a class="el" href="init_8c.html#a189705fbc4254ff3cc332e052cd13215">__attribute__</a>((noreturn))</td></tr>
<tr class="separator:a5b6df4fe38493e14648842364a76075f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41f9c5fb8b08eb5dc3edce4dcb37fee7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#a41f9c5fb8b08eb5dc3edce4dcb37fee7">true</a>&#160;&#160;&#160;(1)</td></tr>
<tr class="separator:a41f9c5fb8b08eb5dc3edce4dcb37fee7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65e9886d74aaee76545e83dd09011727"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>&#160;&#160;&#160;(0)</td></tr>
<tr class="separator:a65e9886d74aaee76545e83dd09011727"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a057810d35075597ca699719778344515"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#a057810d35075597ca699719778344515">ROUNDDOWN</a>(a,  n)</td></tr>
<tr class="separator:a057810d35075597ca699719778344515"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d25fbed833545ed7a3c01e818de0bcf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#a5d25fbed833545ed7a3c01e818de0bcf">ROUNDUP</a>(a,  n)</td></tr>
<tr class="separator:a5d25fbed833545ed7a3c01e818de0bcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd049f7ad59dbe455f460807475c2841"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#afd049f7ad59dbe455f460807475c2841">offsetof</a>(type,  member)&#160;&#160;&#160;    ((<a class="el" href="defs_8h.html#afeaa5ef46acd844422607ca6602691ef">size_t</a>)(&amp;((type *)0)-&gt;member))</td></tr>
<tr class="separator:afd049f7ad59dbe455f460807475c2841"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9319e8a2aa1ca109db93ec14f04524e1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#a9319e8a2aa1ca109db93ec14f04524e1">to_struct</a>(ptr,  type,  member)&#160;&#160;&#160;    ((type *)((char *)(ptr) - <a class="el" href="defs_8h.html#afd049f7ad59dbe455f460807475c2841">offsetof</a>(type, member)))</td></tr>
<tr class="separator:a9319e8a2aa1ca109db93ec14f04524e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
类型定义</h2></td></tr>
<tr class="memitem:a1062901a7428fdd9c7f180f5e01ea056"><td class="memItemLeft" align="right" valign="top">typedef int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#a1062901a7428fdd9c7f180f5e01ea056">bool</a></td></tr>
<tr class="separator:a1062901a7428fdd9c7f180f5e01ea056"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad566f6541e98b74246db1a3a3a85ad49"><td class="memItemLeft" align="right" valign="top">typedef char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#ad566f6541e98b74246db1a3a3a85ad49">int8_t</a></td></tr>
<tr class="separator:ad566f6541e98b74246db1a3a3a85ad49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba7bc1797add20fe3efdf37ced1182c5"><td class="memItemLeft" align="right" valign="top">typedef unsigned char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#aba7bc1797add20fe3efdf37ced1182c5">uint8_t</a></td></tr>
<tr class="separator:aba7bc1797add20fe3efdf37ced1182c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa343fa3b3d06292b959ffdd4c4703b06"><td class="memItemLeft" align="right" valign="top">typedef short&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#aa343fa3b3d06292b959ffdd4c4703b06">int16_t</a></td></tr>
<tr class="separator:aa343fa3b3d06292b959ffdd4c4703b06"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a273cf69d639a59973b6019625df33e30"><td class="memItemLeft" align="right" valign="top">typedef unsigned short&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#a273cf69d639a59973b6019625df33e30">uint16_t</a></td></tr>
<tr class="separator:a273cf69d639a59973b6019625df33e30"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a32f2e37ee053cf2ce8ca28d1f74630e5"><td class="memItemLeft" align="right" valign="top">typedef int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#a32f2e37ee053cf2ce8ca28d1f74630e5">int32_t</a></td></tr>
<tr class="separator:a32f2e37ee053cf2ce8ca28d1f74630e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a435d1572bf3f880d55459d9805097f62"><td class="memItemLeft" align="right" valign="top">typedef unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#a435d1572bf3f880d55459d9805097f62">uint32_t</a></td></tr>
<tr class="separator:a435d1572bf3f880d55459d9805097f62"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a996e72f71b11a5bb8b3b7b6936b1516d"><td class="memItemLeft" align="right" valign="top">typedef long long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#a996e72f71b11a5bb8b3b7b6936b1516d">int64_t</a></td></tr>
<tr class="separator:a996e72f71b11a5bb8b3b7b6936b1516d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa5d1cd013383c889537491c3cfd9aad"><td class="memItemLeft" align="right" valign="top">typedef unsigned long long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#aaa5d1cd013383c889537491c3cfd9aad">uint64_t</a></td></tr>
<tr class="separator:aaa5d1cd013383c889537491c3cfd9aad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1c3e7815414ef1752c829f69ffbb6cd"><td class="memItemLeft" align="right" valign="top">typedef sint_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#ad1c3e7815414ef1752c829f69ffbb6cd">intptr_t</a></td></tr>
<tr class="separator:ad1c3e7815414ef1752c829f69ffbb6cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a04cf3633489292bdd23ff5b429bc476b"><td class="memItemLeft" align="right" valign="top">typedef uint_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#a04cf3633489292bdd23ff5b429bc476b">uintptr_t</a></td></tr>
<tr class="separator:a04cf3633489292bdd23ff5b429bc476b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afeaa5ef46acd844422607ca6602691ef"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="defs_8h.html#a04cf3633489292bdd23ff5b429bc476b">uintptr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#afeaa5ef46acd844422607ca6602691ef">size_t</a></td></tr>
<tr class="separator:afeaa5ef46acd844422607ca6602691ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abafb6daca94570612947ad9188e76704"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="defs_8h.html#afeaa5ef46acd844422607ca6602691ef">size_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="defs_8h.html#abafb6daca94570612947ad9188e76704">ppn_t</a></td></tr>
<tr class="separator:abafb6daca94570612947ad9188e76704"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">宏定义说明</h2>
<a id="a6034e8cd4bcd5bacfd060abd01bbd8a8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6034e8cd4bcd5bacfd060abd01bbd8a8">&#9670;&nbsp;</a></span>__always_inline</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __always_inline&#160;&#160;&#160;inline <a class="el" href="init_8c.html#a189705fbc4254ff3cc332e052cd13215">__attribute__</a>((always_inline))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a2a3055fa9fd2b7c91df69c75e185e76f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2a3055fa9fd2b7c91df69c75e185e76f">&#9670;&nbsp;</a></span>__noinline</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __noinline&#160;&#160;&#160;<a class="el" href="init_8c.html#a189705fbc4254ff3cc332e052cd13215">__attribute__</a>((noinline))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a5b6df4fe38493e14648842364a76075f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5b6df4fe38493e14648842364a76075f">&#9670;&nbsp;</a></span>__noreturn</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __noreturn&#160;&#160;&#160;<a class="el" href="init_8c.html#a189705fbc4254ff3cc332e052cd13215">__attribute__</a>((noreturn))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a65e9886d74aaee76545e83dd09011727"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a65e9886d74aaee76545e83dd09011727">&#9670;&nbsp;</a></span>false</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define false&#160;&#160;&#160;(0)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a070d2ce7b6bb7e5c05602aa8c308d0c4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a070d2ce7b6bb7e5c05602aa8c308d0c4">&#9670;&nbsp;</a></span>NULL</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define NULL&#160;&#160;&#160;((void *)0)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="afd049f7ad59dbe455f460807475c2841"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afd049f7ad59dbe455f460807475c2841">&#9670;&nbsp;</a></span>offsetof</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define offsetof</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">type, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">member&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;    ((<a class="el" href="defs_8h.html#afeaa5ef46acd844422607ca6602691ef">size_t</a>)(&amp;((type *)0)-&gt;member))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a057810d35075597ca699719778344515"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a057810d35075597ca699719778344515">&#9670;&nbsp;</a></span>ROUNDDOWN</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ROUNDDOWN</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">a, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">n&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>值:</b><div class="fragment"><div class="line">            ({                                          \</div>
<div class="line">            size_t __a = (<a class="code" href="defs_8h.html#afeaa5ef46acd844422607ca6602691ef">size_t</a>)(a);                               \</div>
<div class="line">            (typeof(a))(__a - __a % (n));                           \</div>
<div class="line">        })</div>
<div class="ttc" id="adefs_8h_html_afeaa5ef46acd844422607ca6602691ef"><div class="ttname"><a href="defs_8h.html#afeaa5ef46acd844422607ca6602691ef">size_t</a></div><div class="ttdeci">uintptr_t size_t</div><div class="ttdef"><b>Definition:</b> defs.h:44</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a5d25fbed833545ed7a3c01e818de0bcf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5d25fbed833545ed7a3c01e818de0bcf">&#9670;&nbsp;</a></span>ROUNDUP</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ROUNDUP</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">a, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">n&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>值:</b><div class="fragment"><div class="line">            ({                                            \</div>
<div class="line">            size_t __n = (<a class="code" href="defs_8h.html#afeaa5ef46acd844422607ca6602691ef">size_t</a>)(n);                               \</div>
<div class="line">            (typeof(a))(<a class="code" href="defs_8h.html#a057810d35075597ca699719778344515">ROUNDDOWN</a>((<span class="keywordtype">size_t</span>)(a) + __n - 1, __n));     \</div>
<div class="line">        })</div>
<div class="ttc" id="adefs_8h_html_a057810d35075597ca699719778344515"><div class="ttname"><a href="defs_8h.html#a057810d35075597ca699719778344515">ROUNDDOWN</a></div><div class="ttdeci">#define ROUNDDOWN(a, n)</div><div class="ttdef"><b>Definition:</b> defs.h:53</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a9319e8a2aa1ca109db93ec14f04524e1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9319e8a2aa1ca109db93ec14f04524e1">&#9670;&nbsp;</a></span>to_struct</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define to_struct</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">ptr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">type, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">member&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;    ((type *)((char *)(ptr) - <a class="el" href="defs_8h.html#afd049f7ad59dbe455f460807475c2841">offsetof</a>(type, member)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a41f9c5fb8b08eb5dc3edce4dcb37fee7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a41f9c5fb8b08eb5dc3edce4dcb37fee7">&#9670;&nbsp;</a></span>true</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define true&#160;&#160;&#160;(1)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">类型定义说明</h2>
<a id="a1062901a7428fdd9c7f180f5e01ea056"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1062901a7428fdd9c7f180f5e01ea056">&#9670;&nbsp;</a></span>bool</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef int <a class="el" href="defs_8h.html#a1062901a7428fdd9c7f180f5e01ea056">bool</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aa343fa3b3d06292b959ffdd4c4703b06"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa343fa3b3d06292b959ffdd4c4703b06">&#9670;&nbsp;</a></span>int16_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef short <a class="el" href="defs_8h.html#aa343fa3b3d06292b959ffdd4c4703b06">int16_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a32f2e37ee053cf2ce8ca28d1f74630e5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a32f2e37ee053cf2ce8ca28d1f74630e5">&#9670;&nbsp;</a></span>int32_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef int <a class="el" href="defs_8h.html#a32f2e37ee053cf2ce8ca28d1f74630e5">int32_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a996e72f71b11a5bb8b3b7b6936b1516d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a996e72f71b11a5bb8b3b7b6936b1516d">&#9670;&nbsp;</a></span>int64_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef long long <a class="el" href="defs_8h.html#a996e72f71b11a5bb8b3b7b6936b1516d">int64_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ad566f6541e98b74246db1a3a3a85ad49"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad566f6541e98b74246db1a3a3a85ad49">&#9670;&nbsp;</a></span>int8_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef char <a class="el" href="defs_8h.html#ad566f6541e98b74246db1a3a3a85ad49">int8_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ad1c3e7815414ef1752c829f69ffbb6cd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad1c3e7815414ef1752c829f69ffbb6cd">&#9670;&nbsp;</a></span>intptr_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef sint_t <a class="el" href="defs_8h.html#ad1c3e7815414ef1752c829f69ffbb6cd">intptr_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="abafb6daca94570612947ad9188e76704"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abafb6daca94570612947ad9188e76704">&#9670;&nbsp;</a></span>ppn_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="defs_8h.html#afeaa5ef46acd844422607ca6602691ef">size_t</a> <a class="el" href="defs_8h.html#abafb6daca94570612947ad9188e76704">ppn_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="afeaa5ef46acd844422607ca6602691ef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afeaa5ef46acd844422607ca6602691ef">&#9670;&nbsp;</a></span>size_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="defs_8h.html#a04cf3633489292bdd23ff5b429bc476b">uintptr_t</a> <a class="el" href="defs_8h.html#afeaa5ef46acd844422607ca6602691ef">size_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a273cf69d639a59973b6019625df33e30"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a273cf69d639a59973b6019625df33e30">&#9670;&nbsp;</a></span>uint16_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef unsigned short <a class="el" href="defs_8h.html#a273cf69d639a59973b6019625df33e30">uint16_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a435d1572bf3f880d55459d9805097f62"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a435d1572bf3f880d55459d9805097f62">&#9670;&nbsp;</a></span>uint32_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef unsigned int <a class="el" href="defs_8h.html#a435d1572bf3f880d55459d9805097f62">uint32_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aaa5d1cd013383c889537491c3cfd9aad"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaa5d1cd013383c889537491c3cfd9aad">&#9670;&nbsp;</a></span>uint64_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef unsigned long long <a class="el" href="defs_8h.html#aaa5d1cd013383c889537491c3cfd9aad">uint64_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aba7bc1797add20fe3efdf37ced1182c5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aba7bc1797add20fe3efdf37ced1182c5">&#9670;&nbsp;</a></span>uint8_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef unsigned char <a class="el" href="defs_8h.html#aba7bc1797add20fe3efdf37ced1182c5">uint8_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a04cf3633489292bdd23ff5b429bc476b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a04cf3633489292bdd23ff5b429bc476b">&#9670;&nbsp;</a></span>uintptr_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint_t <a class="el" href="defs_8h.html#a04cf3633489292bdd23ff5b429bc476b">uintptr_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
制作者&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>
